package it.struts.helloworld.services;

import java.util.List;

import it.struts.helloworld.model.Prodotti;
import it.struts.helloworld.utils.HibernateUtils;

import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;


public class ProdottiService {
	
	Session sess;
	Prodotti p;
	
	public List<Prodotti> vediCatalogo(){
		
		try{
			sess= HibernateUtils.getSessionFactory();
			sess.beginTransaction();
			Criteria criteria = sess.createCriteria(Prodotti.class);
			criteria.add(Restrictions.eq("Stato", "Disponibile"));
			
			List<Prodotti> p = (List<Prodotti>) criteria.list();

			return (List<Prodotti>) p;
		}
		catch(Exception exep){
			exep.printStackTrace();
		}
		
		return null;
	}
	
	
	public static Prodotti loadProductToCart(Integer productid){
		
		try{
			
			Session sess;
		sess= HibernateUtils.getSessionFactory();
		Query query = sess.createQuery("FROM Prodotti WHERE prodotti_id = :id");
		query.setParameter("id", productid);
		return (Prodotti) query.uniqueResult();
		
	}
	catch(Exception exep){
	exep.printStackTrace();
}
		return null;

	}
}